package business;

import util.AdviceTimesToAct;
import util.LogicalOperators;
import util.PointcutDesignator;
import util.PointcutTypes;

public class AdvicePointcut extends GenericAdvice{

	private String linesToAct;
	private PointcutTypes type;
	private Formals functionFormals;
	private String functionIdentifier;
	private PointcutDesignator designator;
	private LogicalOperators logicalOperator;
	
	private boolean isInNetlogoCode;

	public AdvicePointcut(AdviceTimesToAct timeToAct, String bodyFunction, PointcutTypes type,
			String linesToAct, String functionIdentifier, Formals functionFormals, LogicalOperators logicalOperator, 
			PointcutDesignator designator) {
		super(timeToAct, bodyFunction);
		this.type = type;
		this.linesToAct = linesToAct;
		this.designator = designator;
		this.logicalOperator = logicalOperator;
		this.functionFormals = functionFormals;
		this.functionIdentifier = functionIdentifier;
	}

	public String getLinesToAct() {
		return linesToAct;
	}

	public PointcutTypes getType() {
		return type;
	}

	public String getFunctionIdentifier() {
		return functionIdentifier;
	}

	public PointcutDesignator getDesignator() {
		return designator;
	}

	public LogicalOperators getLogicalOperator() {
		return logicalOperator;
	}

	public Formals getFunctionFormals() {
		return functionFormals;
	}

	public boolean isInNetlogoCode() {
		return isInNetlogoCode;
	}

	public void setInNetlogoCode(boolean isInNetlogoCode) {
		this.isInNetlogoCode = isInNetlogoCode;
	}

}
